package structuralModel.bridge.reductionBridge;

import structuralModel.bridge.reductionBridge.dto.EmissionFactorInfoDto;
import structuralModel.bridge.reductionBridge.dto.InputDataInfoDto;

import java.util.LinkedList;
import java.util.List;

/**
 * 功能描述:
 * 功能描述:抽象操作采集数据
 * 2024/06/29
 * <p>
 * <p>
 * 2024/06/29
 *
 * @author ZhangYi
 */
public abstract class AbstractOperationAcquisitionData <T>{
    private SceneConfigInfo sceneConfigInfo;

    public AbstractOperationAcquisitionData(SceneConfigInfo sceneConfigInfo) {
        this.sceneConfigInfo = sceneConfigInfo;
    }
    public final void distinctData(T basicConfigDto){
        System.out.println(this.sceneConfigInfo.getSceneConfigType()+"开始处理");
        this.convert2EmissionFactorInfoDtoList(basicConfigDto);
        this.convert2InputDataInfoDtoList(basicConfigDto);
    }

    protected abstract List<EmissionFactorInfoDto> convert2EmissionFactorInfoDtoList(T basicConfigDto);

    protected abstract List<InputDataInfoDto> convert2InputDataInfoDtoList(T basicConfigDto);

}
